﻿
namespace SistemaLogistica.Business.Logic
{
    using System;
    using System.Collections.Generic;
    using SistemaLogistica.Business.Entities;
    using SistemaLogistica.DataAccess;

    public class TelefonoManager
    {
        private TelefonoManager() { }

        private static readonly TelefonoManager instancia = new TelefonoManager();

        public static TelefonoManager Instancia
        {
            get { return instancia; }
        }

        public List<Telefono> Listar()
        {
            try
            {
                return TelefonoData.Instancia.Listar();
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }

        public List<Telefono> Buscar(string numero)
        {
            try
            {
                return TelefonoData.Instancia.Buscar(numero);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }

        public Telefono BuscarPorDescripcion(string descripcion)
        {
            try
            {
                return TelefonoData.Instancia.BuscarPorDescripcion(descripcion);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }

        public Telefono ObtenerPorID(int idBien)
        {
            try
            {
                return TelefonoData.Instancia.ObtenerPorID(idBien);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }

        public Telefono ObtenerPorNumero(string numero)
        {
            try
            {
                return TelefonoData.Instancia.ObtenerPorNumero(numero);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }

        public bool Agregar(Telefono telefono)
        {
            try
            {
                return TelefonoData.Instancia.Agregar(telefono);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }

        public void Modificar(Telefono telefono)
        {
            try
            {
                TelefonoData.Instancia.Modificar(telefono);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }

        public void Eliminar(int idTelefono)
        {
            try
            {
                TelefonoData.Instancia.Eliminar(idTelefono);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
    }
}
